package com.css.fxfzypg.modules.surveytaskmanage.repository;

import com.css.fxfzypg.modules.preassesstaskmanage.vo.PreVo;
import com.css.fxfzypg.modules.surveytaskmanage.entity.FieldSurveyTaskEntity;
import com.css.fxfzypg.modules.surveytaskmanage.vo.FieldSurveyVo;
import com.css.fxfzypg.modules.surveytaskmanage.vo.TaskVo;
import com.css.fxfzypg.zcpt.sys.entity.SUser;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;


public interface FieldSurveyTaskRepository {



    void saveTask(FieldSurveyTaskEntity fieldSurveyTaskEntity);

    Map<String,Object> findParentIdByTask(String parentId, TaskVo taskVo,int curPage, int pageSize);

    List<FieldSurveyTaskEntity> getSubTask(String parentTaskId);

    FieldSurveyTaskEntity findById(String taskId);

    void updateTask(FieldSurveyTaskEntity fieldSurveyTaskEntity);

    void completeTask(String taskStatus, String id);

    void assignGroup(FieldSurveyTaskEntity fieldSurveyTaskEntity);

    void deleteTask(String delFlag, String id);

    void deleteFieldSurvey(String delFlag, String taskNum);

    Map<String, Object> getAppPage(HttpServletRequest request, TaskVo taskVo, int curPage, int pageSize, List<String> grouoIds);

    FieldSurveyTaskEntity getParentTask(String parentTaskNum);

    String getMaxSubTaskNum(String parentTaskNum);

    List<FieldSurveyVo> findSubIdByTask(String id, TaskVo taskVo);

    String getGroupLeaderId(String taskNum);

    List<Map<String, Object>> getTeamMembers(String taskNum);

    String getMaxParentNum(String taskYear,String divisionCode);

    List<FieldSurveyTaskEntity> getAllParentTask(String parentTaskId, String userId);

    List<TaskVo> getTask();

    List<TaskVo> getTaskManagers();

    List<Map<String, Object>> getAllTaskNum();

    String getTaskNameByTaskNum(String taskNum);

    Boolean updateTaskIntensity(String taskId, String intensity);

    void insertReportIdIntoTask(String id, String taskCode);

    String getStructureFuture(String province, String city, String county, String buildingStructure,String taskCode);

    List<PreVo> getFuTask();

    String getExtent(String taskId);

    String getcenter(String taskId);

    List<TaskVo> getAllTask(SUser sUser);

    FieldSurveyTaskEntity getById(String xcdcTaskId);

    List<FieldSurveyTaskEntity> getSubTaskByTaskCode(String taskCode);

    List<FieldSurveyTaskEntity> getChildrenByParentId(String id);

    List<String> getGroupUserIdByTaskCode(String taskCode);
}
